package com.fmy.jurisdiction.modular.mapper;

import com.fmy.jurisdiction.modular.model.AdminPermission;
import com.fmy.jurisdiction.modular.model.AdminRolePerm;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

/**
 * <p>
 * 角色权限表  Mapper 接口
 * </p>
 *
 * @author Mr.fmy
 * @since 2019-09-16
 */
public interface AdminRolePermMapper extends BaseMapper<AdminRolePerm> {

    /**
     * 根据角色ID获取其对应的所有权限 code
     *
     * @param roles 角色集合
     */
    Set<String> findByRoleIdToPermCode(@Param("roles") List<Integer> roles);

    /**
     * 根据角色ID获取其对应的所有权限 信息
     * <p>
     * 按层级/sort/排序
     * </p>
     *
     * @param type  可为空
     * @param roles 可为空
     */
    List<AdminPermission> findByRoleIdToPrem(@Param("roles") List<Integer> roles, @Param("type") Integer type);
}
